The subject matter discussed in the background section should not be assumed to be prior art merely as a result of its mention in the background section. Similarly, a problem mentioned in the background section or associated with the subject matter of the background section should not be assumed to have been previously recognized in the prior art. The subject matter in the background section merely represents different approaches, which in and of themselves may also be inventions.
A database system may analyze ecommerce market baskets, shopping carts, or search results, which may be referred to as interaction sets, to create association rules in the form of X→Y, where X and Y are disjoint sets of objects. Such association rules may be used for making recommendations based on a sufficiently high confidence P(Y|X), which may have the interpretation “the probability that an interaction set containing X also contains Y.” A high confidence association rule may be used to recommend Y when a user has X in the current interaction set. However, even when a database system has interaction set data available, some interaction set sizes may be much larger than interaction set sizes used in typical ecommerce settings. For example, a user may purchase the information for several thousand business contacts in a single interaction, in contrast to typical ecommerce shopping baskets which usually contain less than 30 objects. Working with very large interaction set sizes substantially increases the computational complexity of interaction set analysis. Even a fast algorithm slows down immensely on large interaction sets because even if the database system seeks association rules X→Y in which |X| is small, such as n=3, an interaction set of size m has “m choose n” subsets of cardinality n each, each of which necessarily has to be enumerated.
When different users interact with different sets of objects from a database, a recommendation model may learn which sets of objects are in the same interaction set more frequently with others. In a multi-tenant database, there are numerous tenant organizations whose users interact with sets of objects. While leveraging such data from multiple tenant organizations could improve the recommendations made by a recommendation model, multi-tenant databases usually forbid data from one tenant organization to be visible outside of that tenant organization. Therefore, challenges exist for generating, training, and using a multi-tenant recommendation model.